#!/bin/bash

# 企业微信机器人部署脚本

echo "🚀 开始部署企业微信机器人服务..."

# 检查Docker是否安装
if ! command docker -v &> /dev/null; then
    echo "❌ Docker未安装，请先安装Docker"
    exit 1
fi

# 检查Docker Compose是否安装
if ! command docker compose -v &> /dev/null; then
    echo "❌ Docker Compose未安装，请先安装Docker Compose"
    exit 1
fi

# 检查配置文件是否存在
if [ ! -f "config.env" ]; then
    echo "❌ 配置文件config.env不存在"
    exit 1
fi

# 创建日志目录
echo "📁 创建日志目录..."
mkdir -p logs

# 停止现有服务
echo "📦 停止现有服务..."
docker compose down

# 构建并启动服务
echo "🔨 构建并启动服务..."
docker compose up -d --build

# 等待服务启动
echo "⏳ 等待服务启动..."
sleep 10

# 检查服务状态
echo "🔍 检查服务状态..."
docker compose ps

# 检查服务健康状态
echo "🏥 检查服务健康状态..."
PORT=${PORT:-53230}
if curl -f http://localhost:$PORT/health > /dev/null 2>&1; then
    echo "✅ 服务启动成功！"
    echo "📋 服务信息："
    echo "   - 服务地址: http://localhost:$PORT"
    echo "   - 健康检查: http://localhost:$PORT/health"
    echo "   - 企业微信回调: http://localhost:$PORT/wechat"
    echo ""
    echo "📝 企业微信配置："
    echo "   - 回调URL: http://your-domain.com/wechat"
    echo "   - Token: HDPhIK3pe42"
    echo "   - EncodingAESKey: OlLdotdgqBC7Wh9YtuJSgWu1zpbmXX1UvJ5bjnhAqJT"
    echo ""
    echo "📊 查看日志: docker compose logs -f"
    echo "📄 查看应用日志: tail -f logs/app.log"
    echo "🚨 查看错误日志: tail -f logs/error.log"
    echo "🛑 停止服务: docker compose down"
else
    echo "❌ 服务启动失败，请检查日志"
    docker compose logs
    exit 1
fi 